/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.mindbox.mueblesalpes.negocio.utilidades;

import com.mindbox.mueblesalpes.negocio.entity.Ciudad;
import com.mindbox.mueblesalpes.negocio.entity.Departamento;
import com.mindbox.mueblesalpes.negocio.entity.Pais;
import java.util.Date;
import java.util.List;
import javax.ejb.Local;

/**
 *
 * @author Diana Carolina
 */
@Local
public interface IUtilidades {
    /**
     * Método que retorna una lista de paises
     * @return
     */
    public List<Pais> consultarPaises();
    /**
     * Método que retorna una lista de tipos de usuario
     * @return
     */
    public List consultarTipoUsuarios();
    /**
     * Método que retorna una lista de los tipos de documento
     * @return Lista con los tipos de documento
     */
    public List consultarTipoDocumento();
    /**
     * Método que retorna una lista de departamentos
     * @return Lista con nombres de departamento
     */
    public List<Departamento> consultarDepartamentos();
    /**
     * Método que retorna na lista de ciudades
     * @return Lista con los nombres de ciudades
     */
    public List<Ciudad> consultarCiudades();
    /**
     * Método que valida la diferencia en dias entre dos fechas
     * @param fechaInicial
     * @param fechaFinal
     * @return días de diferencia entre las dos fechas
     * @throws java.text.ParseException
     */
    public int fechasDiferenciaEnDias(Date fechaInicial, Date fechaFinal) throws java.text.ParseException;
    /**
     * Método que retorna el número de semanas transcurridas en un número de días determinado
     * @param dias
     * @return número de semanas
     */
    public int semanasTranscurridas(int dias);
}
